import { MenuTypeEnum } from '@/enums/MenuTypeEnum';

/**
 * 菜单查询参数类型
 */
export interface MenuQuery {
  name?: string;
  url?: string;
}

/**
 * 菜单视图对象类型
 */
export interface MenuVO {
  id: number;
  parentId: number;
  title: string;
  path?: string;
  name: string;
  icon?: string;
  redirect?: string;
  component?: string;
  children?: MenuVO[]
}

/**
 * 菜单表单对象类型
 */
export interface MenuForm {
  id?: number;
  key?: string;
  name?: string;
  title?: string;
  parentId?: number;
  url?: string;
  perms?: string;
  type?: number;
  icon?: string;
  orderNum?: number;
  createBy?: string;
  createTime?: string;
  lastUpdateBy?: string;
  lastUpdateTime?: string;
  delFlag?: number;
  vuePath?: string;
  vueComponent?: string;
  vueIcon?: string;
  vueRedirect?: string;
  backgroundUrl?: string;
  status?: number;
  method?: string;
}
